﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using clEntidad;
using clBUS;

namespace portero_
{
    public partial class frmEquipo : Form
    {
        public frmEquipo()
        {
            InitializeComponent();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            this.Hide ();
        }
        public Equipo equipo { get; set; }
        private void frmEquipo_Load(object sender, EventArgs e)
        {
            llenaElementos("tipo",cbTipo);
            llenaElementos("marca", cbMarca);
            llenaElementos("modelo", cbModelo);
        }
        private void llenaElementos(String elemento, ComboBox cb)
        {
            BUSBase objBUS = new BUSBase(Constantes.CADENA_BD);
            List<String> elems = objBUS.getElementos(elemento);
            AutoCompleteStringCollection data = new AutoCompleteStringCollection();
            foreach (String cadena in elems)
            {
                data.Add(cadena);
            }
            cb.AutoCompleteCustomSource = data;
        }


        private void btnAceptar_Click(object sender, EventArgs e)
        {
            Equipo equipo = new Equipo();
            equipo.numSerie = tbNumSerie.Text;
            equipo.tipo = cbTipo.Text;
            equipo.marca = cbMarca.Text;
            equipo.modelo = cbModelo.Text;

            this.equipo = equipo;
            
            this.Hide();
        }

        private void frmEquipo_Shown(object sender, EventArgs e)
        {
            tbNumSerie.Focus();
        }

        private void tbNumSerie_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == 13)
                SendKeys.Send("{TAB}");

        }

        private void cbTipo_KeyPress(object sender, KeyPressEventArgs e)
        {
            e.KeyChar = char.ToUpper(e.KeyChar);
            if (e.KeyChar == 13)
                SendKeys.Send("{TAB}");

        }

        private void cbMarca_KeyPress(object sender, KeyPressEventArgs e)
        {
            e.KeyChar = char.ToUpper(e.KeyChar);
            if (e.KeyChar == 13)
                SendKeys.Send("{TAB}");

        }

        private void cbModelo_KeyPress(object sender, KeyPressEventArgs e)
        {
            e.KeyChar = char.ToUpper(e.KeyChar);
            if (e.KeyChar == 13)
                SendKeys.Send("{TAB}");

        }

        private void tbNumSerie_Validated(object sender, EventArgs e)
        {
            BUSEquipo objBUS = new BUSEquipo(Constantes.CADENA_BD);
            Equipo elemento = objBUS.get(tbNumSerie.Text.Trim());
            if (elemento  != null)
            {
                cbTipo.Text = elemento.tipo ;
                cbMarca.Text = elemento.marca;
                cbModelo.Text = elemento.modelo;
            }

        }

        private void cbTipo_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
                SendKeys.Send("{TAB}");
        }

        private void cbMarca_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
                SendKeys.Send("{TAB}");
        }

        private void cbModelo_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Enter)
                SendKeys.Send("{TAB}");
        }
    }
}
